﻿using M.AuditField;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace M_Manufacture.Domain
{
    /// <summary>
    /// 生产计划
    /// </summary>
    public class ProductionPlan : AuditFields
    {
        [Key]
        public int ProductionPlanId { get; set; }

        /// <summary>
        /// 生产计划编号
        /// </summary>
        public string? ProductionPlanNumber { get; set; }

        /// <summary>
        /// 生产状态
        /// </summary>
        public string? ProductionStatus { get; set; }

        /// <summary>
        /// 成品编号
        /// </summary>
        public string? ProductNumber { get; set; }

        /// <summary>
        /// 优先级
        /// </summary>
        public string? Priority { get; set; }

        /// <summary>
        /// 规格型号
        /// </summary>
        public string? FinishedProductSpecification { get; set; }

        /// <summary>
        /// 计划产量
        /// </summary>
        public int PlannedProduction { get; set; }

        /// <summary>
        /// 报工数量
        /// </summary>
        public int ReportingNum { get; set; }

        /// <summary>
        /// 订单ID
        /// </summary>
        public int Id { get; set; }

        /// <summary>
        /// 工艺路线
        /// </summary>
        public string? ProcessRouteName { get; set; }

        /// <summary>
        /// 车间
        /// </summary>
        public string? WorkshopName { get; set; }

        /// <summary>
        /// 实际开始日期
        /// </summary>
        public DateTime? StartingDate { get; set; }

        /// <summary>
        /// 实际结束日期
        /// </summary>
        public DateTime? EndingDate { get; set; }
    }
}
